#include "led.h"
#include "timer.h"
#include "mcu_api.h"
#include "wifi.h"


/**********************************************************
//	*	函数名称： LED_Init( )
//	* 功能    ： LED和WBR3引脚初始化
//	*	参数    ： PB0--LED    PB3--WBR3
//	*	返回值  :  无
***********************************************************/
void LED_Init(void)
{
		GPIO_Config_T gpioConfig;
    RCM_EnableAHBPeriphClock(RCM_AHB_PERIPH_GPIOB);
    /* LED2 GPIO configuration */
	
    gpioConfig.pin = GPIO_PIN_0 | GPIO_PIN_3|GPIO_PIN_5;
    gpioConfig.mode = GPIO_MODE_OUT;
    gpioConfig.outtype = GPIO_OUT_TYPE_PP;
    gpioConfig.speed = GPIO_SPEED_50MHz;
    gpioConfig.pupd = GPIO_PUPD_NO;
    GPIO_Config(GPIOB, &gpioConfig);
	
		GPIO_SetBit(GPIOB, GPIO_PIN_5); 
	
}
 /***************时间要改*********************/
void WIFI_LED(u8 wifi_work_state)
{
		switch(wifi_work_state)
		{
			case SMART_CONFIG_STATE:
				//处于 Smart 配置状态，即 LED 快闪
				if(Wifi_tick>=10){
					Wifi_tick = 0;
					GPIOB->ODATA ^= GPIO_PIN_5;
				}
			break;
			case AP_STATE:
				//处于 AP 配置状态，即 LED 慢闪
				if(Wifi_tick>=50){
				Wifi_tick = 0;
				GPIOB->ODATA ^= GPIO_PIN_5;
			}
			break;
			case WIFI_NOT_CONNECTED:
				GPIO_ClearBit(GPIOB, GPIO_PIN_5);  //Wi-Fi 配置完成，正在连接路由器，即 LED 常暗
			break;
			
			case WIFI_CONNECTED:
				GPIO_ClearBit(GPIOB, GPIO_PIN_5);	//路由器连接成功，即 LED 常亮
			break;
			default:
				break;
		}
}
/**********************************************************
//	*	函数名称： WIFI_EN(u8 )
//	* 功能    ： WBR3 使能引脚
//	*	参数    ： 0失能  1使能 
//	*	返回值  :  无
***********************************************************/

void WIFI_EN(u8 vall)
{
		if(vall == 0)
			GPIO_WriteBitValue(GPIOB,GPIO_PIN_3,Bit_RESET);
		else
			GPIO_WriteBitValue(GPIOB,GPIO_PIN_3,Bit_SET);
}

/**********************************************************
//	*	函数名称： LED_Control(u8 )
//	* 功能    ： LED 使能引脚
//	*	参数    ： 0关灯  1开灯 
//	*	返回值  :  无
***********************************************************/
void LED_Control(u8 val)
{
	if(val == 0)
		GPIO_WriteBitValue(GPIOB,GPIO_PIN_0,Bit_SET);
	else
		GPIO_WriteBitValue(GPIOB,GPIO_PIN_0,Bit_RESET);
}

/**********************************************************
//	*	函数名称： LED_Blink( )
//	* 功能    ： LED 闪烁,利用定时器中断计数 
//	*	参数    ： 无  
//	*	返回值  :  无
***********************************************************/
void LED_Blink(void)
{

	if(led_tick >=40)
	led_tick = 0;

	if(led_tick<20)
	LED_Control(0);
	else
	LED_Control(1);

}








